package CardDemo;

import java.util.ArrayList;
import java.util.List;

public class Test {
    public static void main(String[] args) {
        
    }
    public static void main1(String[] args) {
         ArrayList<String> list =new ArrayList<>();
        list.add("Java课程");
        list.add("JavaSE");
        list.add("JavaEE");
        list.add("JavaWeb");
        System.out.println(list);
        //获取list中的元素个数
        System.out.println(list.size());
        // 获取和设置index位置上的元素，注意index必须介于[0, size)间
        //System.out.println(list.get(1));
        System.out.println(list.set(1,"JavaJVM"));
        System.out.println(list.get(1));
        // 在list的index位置插入指定元素，index及后续的元素统一往后搬移一个位置
        list.add(1,"Java多线程");
        System.out.println(list);
        // 删除指定元素，找到了就删除，该元素之后的元素统一往前搬移一个位置
        list.remove(1);
        System.out.println(list);
        // 删除list中index位置上的元素，注意index不要超过list中有效元素个数,否则会抛出下标越界异常
        list.remove(list.size()-1);
        System.out.println(list);
        // 检测list中是否包含指定元素，包含返回true，否则返回false
        if(list.contains("测试工程")){
           list.add("测试工程");
            System.out.println(list);
        }
        // 查找指定元素第一次出现的位置：indexOf从前往后找，lastIndexOf从后往前找
        list.add("JavaSE");
        System.out.println(list.indexOf("JavaSE"));
        System.out.println(list.lastIndexOf("JavaSE"));
        // 使用list中[0, 4)之间的元素构成一个新的SubList返回,但是和ArrayList共用一个elementData数组
        List<String> ret = list.subList(1,3);
        System.out.println(ret);
        list.clear();
        System.out.println(list.size());
    }
}
